package com.blueberry.quiz_master.quiz.model;

public enum BankDifficulty {
    // 基础难度：以简单题为主，适合入门用户
    BASIC("基础",
            "简单题占80%，中等题占20%，无困难题，适合入门学习",
            80, 20, 0),  // 简单占比、中等占比、困难占比

    // 进阶难度：平衡分布，适合有一定基础的用户
    INTERMEDIATE("进阶",
            "简单题占30%，中等题占50%，困难题占20%，适合能力提升",
            30, 50, 20),

    // 高阶难度：以难题为主，适合资深用户
    ADVANCED("高阶",
            "简单题占10%，中等题占30%，困难题占60%，适合深度挑战",
            10, 30, 60);

    // 用户可见的中文名称（如“基础”）
    private final String label;
    // 难度说明（帮助用户理解该难度的适用场景）
    private final String description;
    // 系统预设的难度分布占比（百分比）
    private final int easyRatio;   // 简单题占比
    private final int mediumRatio; // 中等题占比
    private final int hardRatio;   // 困难题占比

    // 构造方法：绑定总难度与对应的分布规则
    BankDifficulty(String label, String description,
                          int easyRatio, int mediumRatio, int hardRatio) {
        this.label = label;
        this.description = description;
        this.easyRatio = easyRatio;
        this.mediumRatio = mediumRatio;
        this.hardRatio = hardRatio;
    }

    // Getter：供前端展示（如难度名称、说明）
    public String getLabel() { return label; }
    public String getDescription() { return description; }
}
